package com.woniuxy.dao;

import com.woniuxy.entity.RbacRole;
import org.apache.ibatis.annotations.MapKey;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface RbacRoleDao {
//    CRUD
    int insertOne(RbacRole rbacRole);
    int deleteOne(int id);
    int updateOne(RbacRole rbacRole);
    RbacRole findOne(int id);
    //整个表的数据 List<Map<String,String>>

    /**
     * 把结果集封装到Map中，再封装到List集合中
     * @return List<Map<String,String>>
     */
    @MapKey("id")
    List<Map<String,String>> findAll();

    /**
     * 把结果集数据封装到RbacRole对象中，再整体封装到List集合中。
     * @return List<RbacRole> RbacRole 面向对象编程
     */
    List<RbacRole> findAllByObject();

    /**
     * 搜索功能
     * @param rbacRole 搜索的值存放的对象
     * @return 角色列表
     */
    List<RbacRole> search(@Param("r") RbacRole rbacRole);
}
